home *** CD-ROM | disk | FTP | other *** search
/ Commodore 64 Scene Diskmags Assortment / Commodore_CEE_Vol._1_Issue_06_1995_Jack_Vander_White_Disk_1_of_3_Side_B.d64 / test writer v3.1 (.txt) < prev   
Commodore BASIC  |  2023-02-26  |  15KB  |  644 lines

  1. 100 gosub9005
  2. 105 dim tf$(40),an$(40),fl$(40),fs$(40),ma$(40),mn$(40),es$(20),en$(20),b(20)
  3. 110 dim as$(100),r1(40),r2(40),tt(40),ss(40),sp(40),sq(40),sr(20)
  4. 115 gosub8005
  5. 120 close4:gosub1000
  6. 125 on z goto2005,3000,3005,4000,5000,6005,8040,11000,130
  7. 130 poke53280,2:printchr$(147);tab(35);"[209][213][201][212]"
  8. 135 print:print:print
  9. 140 print"   [193]re you finished with [212][197][211][212] [215][210][201][212][197][210]?[144]"
  10. 145 print:print
  11. 150 print"[208]ress  [211]pacebar[146] for main menu"
  12. 155 print"       [209] key[146] to quit program"
  13. 160 gosub180
  14. 165 if z$=" " then120
  15. 170 if z$="q" then end
  16. 175 goto160
  17. 180 getz$:ifz$=""then180
  18. 185 return
  19. 190 end
  20. 1000 poke 53280,5:poke53281,6:poke646,1
  21. 1002 printchr$(14)"[147]            [212][197][211][212] [215][210][201][212][197][210] v3.1"
  22. 1005 print"             by [211]helton [195]ole"
  23. 1010 print:print"                  [205][197][206][213][146]
  24. 1015 [153]:[153]
  25. 1020 [153]"        1.  (NULL)rite questions
  26. 1025 print"        2.  [204]oad test from disk
  27. 1030 [153]"        3.  (NULL)erge test from disk
  28. 1035 print"        4.  [211]ave test to disk
  29. 1040 [153]"        5.  (NULL)rint test
  30. 1045 print"        6.  [197]dit
  31. 1050 [153]"        7.  lenlean slate
  32. 1055 print"        8.  [196]isk [195]ommands"
  33. 1058 print"        9.  [209]uit
  34. 1060 [153]"
  35. 1065 print"  [212]otal number of questions.....";tq
  36. 1070 if dq=0 then1080
  37. 1075 print"  [201]ncluding"dq"[157] deleted question(s)[146]"
  38. 1080 print:print
  39. 1085 gosub1115
  40. 1090 gosub180
  41. 1095 z=val(z$)
  42. 1100 if z<1 or z>9 then1090
  43. 1105 print chr$(14)
  44. 1110 return
  45. 1115 print"  [212]rue-[198]alse [207]pinion.........";q1;
  46. 1120 if dt>0then t1=dt:gosub 1180:goto1130
  47. 1125 print
  48. 1130 print"  [198]ill-in....................";q2;
  49. 1135 if df>0then t1=df:gosub1180:goto1145
  50. 1140 print
  51. 1145 print"  [205]atching...................";q3;
  52. 1150 if dm>0then t1=dm:gosub1180:goto1160
  53. 1155 print
  54. 1160 print"  [197]ssay......................";q4;
  55. 1165 if de>0then t1=de:gosub1180:goto1175
  56. 1170 print
  57. 1175 return
  58. 1180 t1$=str$(t1):print"(";mid$(t1$,2,len(t1$));")":return
  59. 2005 printchr$(147);"[208]ress spacebar for menu"tab(25)"[209][213][197][211][212][201][207][206] [197][206][212][210][217][146]"
  60. 2010 printleft$(cm$,2);"[197]nter  [212][146]-[198]   [197][146]ssay   [205][146]atching   [198][146]ill-in"
  61. 2015 get z$
  62. 2020 if z$="t"then gosub2050:goto2065
  63. 2025 if z$="f"then gosub2050:goto2160
  64. 2030 if z$="e"then gosub2050:goto2220
  65. 2035 if z$="m"then gosub2050:goto2330
  66. 2040 if z$=" "then gosub2050:goto120
  67. 2045 goto2015
  68. 2050 print left$(cm$,2);left$(v$,80):return
  69. 2065 x=120
  70. 2070 q1=q1+1:hd=q1:ifhd<41thenhd$="[147][212]rue/[198]alse-[207]pinion":gosub2385:goto2080
  71. 2075 gosub2405:q1=q1-1:goto120
  72. 2080 if p$="" then q1=q1-1:goto2005
  73. 2085 tf$(q1)=p$
  74. 2090 print left$(cm$,10);"is the answer [212][146]rue, [198][146]alse, or [207][146]pinion?"
  75. 2095 get z$
  76. 2100 if z$="t" then print"true[146]":goto2120
  77. 2105 if z$="f" then print"false[146]":goto2120
  78. 2110 if z$="o" then print"opinion[146]":goto2120
  79. 2115 goto2095
  80. 2120 get z1$
  81. 2125 if z1$=chr$(13)then2140
  82. 2130 if z1$=chr$(20)then print left$(cm$,11);"       [145]":goto2095
  83. 2135 goto2120
  84. 2140 an$(q1)=z$
  85. 2145 tq=tq+1
  86. 2150 printchr$(147):goto2070
  87. 2160 x=120
  88. 2165 q2=q2+1:hd=q2:if hd<41then hd$="[147][213]se [195]= @[146] for fill-in":gosub2385:goto2175
  89. 2170 gosub2405:goto120
  90. 2175 if p$=""then q2=q2-1:goto2005
  91. 2180 fl$(q2)=p$
  92. 2185 printleft$(cm$,10);"[197]nter the answer.[146]"
  93. 2190 x=39:gosub7010
  94. 2195 fs$(q2)=p$
  95. 2200 iffs$(q2)=""then2185
  96. 2205 tq=tq+1
  97. 2210 print chr$(147):goto2160
  98. 2220 x=199
  99. 2225 q4=q4+1:hd=q4:if hd<21 then hd$="[147][197]ssay question":gosub2385:goto2230
  100. 2230 if p$=""then q4=q4-1:goto2005
  101. 2235 es$(q4)=p$
  102. 2240 print"[197]nter the answer"
  103. 2245 print"(press [210][197][212][213][210][206] for"chr$(34)"[193]nswers will vary"chr$(34)")"
  104. 2250 x=199:gosub7010
  105. 2260 if en$(q4)="" then en$(q4)="answers will vary":print"[193]nswers will vary"
  106. 2265 printleft$(cm$,19);"[200]ow many blank lines? (1 - 30)"
  107. 2270 gosub2285
  108. 2275 b(q4)=val(z1$):if b(q4)<0 or b(q4)>30thenprintleft$(cm$,20)"  [145]":goto2270
  109. 2280 tq=tq+1:goto2220
  110. 2285 z1$=""
  111. 2290 gosub180
  112. 2295 if z$=chr$(13)then2315
  113. 2300 if asc(z$)<48 or asc(z$)>57then2290
  114. 2305 z1$=z1$+z$:if len(z1$)>2 then2320
  115. 2310 printz$;:goto2290
  116. 2315 if len(z1$)<1 then2290
  117. 2320 return
  118. 2330 x=28
  119. 2335 q3=q3+1:hd=q3:ifhd<41thenhd$="[147][205]atching [209]uestions":gosub2385:goto2345
  120. 2340 gosub2405:goto120
  121. 2345 ma$(q3)=p$
  122. 2350 if p$="" then q3=q3-1:goto2005
  123. 2355 printleft$(cm$,12);"[193]nswer?"
  124. 2360 x=28:gosub7010
  125. 2365 mn$(q3)=p$
  126. 2370 if mn$(q3)=""then2355
  127. 2375 tq=tq+1
  128. 2380 printchr$(147):goto2330
  129. 2385 printhd$;tab(25)"[209]uestion entry"
  130. 2390 printleft$(cm$,2);"[209]uestion #";hd;tab(20);"total questions:";tq
  131. 2395 print left$(cm$,3);:gosub7010
  132. 2400 hd=0:return
  133. 2405 print"[147]";left$(cm$,12);"[210]eached question limit"
  134. 2410 print"[208]ress spacebar for menu"
  135. 2415 get z$:if z$<>" " then2415
  136. 2420 return
  137. 3000 print "[147]";tab(28)"[204][207][193][196] [212][197][211][212]":mq=0:m1=0:m2=0:m3=0:m4=0:goto3045
  138. 3005 print"[147]";tab(27)"[205][197][210][199][197] [212][197][211][212]":mq=tq:m1=q1:m2=q2:m3=q3:m4=q4
  139. 3010 d1=dq:d2=dt:d3=df:d4=dm:d5=de
  140. 3015 if tq>0 then3045
  141. 3020 print"[206]o test in memory"
  142. 3025 print"[208]ress spacebar for menu"
  143. 3030 gosub180
  144. 3035 if z$=" "then120
  145. 3040 goto3030
  146. 3045 print"[212]est name:"
  147. 3050 print left$(cm$,5);
  148. 3055 x=15:gosub7010
  149. 3060 if p$="" then120
  150. 3065 f$=p$
  151. 3070 open15,8,15:print#15,"i0:":gosub4215
  152. 3075 open 1,8,3,f$+",s,r":gosub4215
  153. 3080 input#1,tq
  154. 3085 input#1,dq
  155. 3090 input#1,q1
  156. 3095 input#1,dt
  157. 3100 input#1,q2
  158. 3105 input#1,df
  159. 3110 input#1,q3
  160. 3115 input#1,dm
  161. 3120 input#1,q4
  162. 3125 input#1,de
  163. 3130 if(m1+q1>40)or(m2+q2>40)or(m3+q3>40)or(m4+q4>20)then3140
  164. 3135 goto3160
  165. 3140 print"[147]";left$(cm$,12);"[197]xceeded question limits":close1:close15
  166. 3145 print"[208]ress any key for menu"
  167. 3150 gosub180
  168. 3155 goto120
  169. 3160 fori=m1+1to m1+q1
  170. 3165 gosub3260:tf$(i)=left$(a$,ll)
  171. 3170 gosub3260:an$(i)=left$(a$,ll)
  172. 3175 next
  173. 3180 for i=m2+1to m2+q2
  174. 3185 gosub3260:fl$(i)=left$(a$,ll)
  175. 3190 gosub3260:fs$(i)=left$(a$,ll)
  176. 3195 next
  177. 3200 fori=m3+1to m3+q3
  178. 3205 gosub3260:ma$(i)=left$(a$,ll)
  179. 3210 gosub3260:mn$(i)=left$(a$,ll)
  180. 3215 next
  181. 3220 fori=m4+1to m4+q4
  182. 3225 gosub3260:es$(i)=left$(a$,ll)
  183. 3230 gosub3260:en$(i)=left$(a$,ll)
  184. 3235 input#1,b(i)
  185. 3240 next
  186. 3245 tq=tq+mq:q1=q1+m1:q2=q2+m2:q3=q3+m3:q4=q4+m4
  187. 3250 dq=d1+dq:dt=d2+dt:df=d3+df:dm=d4+dm:de=d5+de
  188. 3255 close1:close15:goto120
  189. 3260 sys896:ll=peek(142)
  190. 3265 return
  191. 4000 print"[147]";tab(28)"[211][193][214][197] [212][197][211][212]"
  192. 4005 if tq>0then4035
  193. 4010 print"[206]o questions to save!
  194. 4015 [153]"(NULL)ress spacebar for menu"
  195. 4020 [141]180
  196. 4025 [139] z$[178] " "[167]120
  197. 4030 [137]4020
  198. 4035 [153]"(NULL)est name:"
  199. 4040 [153] [200](cm$,5);
  200. 4045 x[178]15:[141]7010
  201. 4050 [139] p$[178]"" [167]120
  202. 4055 f$[178]p$
  203. 4060 [159]15,8,15:[152]15,"i0:":[141]4215
  204. 4065 [159] 1,8,3,f$[170]",s,w":[141]4215
  205. 4070 [152]1,tq
  206. 4075 [152]1,dq
  207. 4080 [152]1,q1
  208. 4085 [152]1,dt
  209. 4090 [152]1,q2
  210. 4095 [152]1,df
  211. 4100 [152]1,q3
  212. 4105 [152]1,dm
  213. 4110 [152]1,q4
  214. 4115 [152]1,de
  215. 4120 [129] i[178]1 [164] q1
  216. 4125 [152]1,tf$(i)
  217. 4130 [152]1,an$(i)
  218. 4135 [130]
  219. 4140 [129] i[178]1 [164] q2
  220. 4145 [152]1,fl$(i)
  221. 4150 [152]1,fs$(i)
  222. 4155 [130]
  223. 4160 [129] i[178]1 [164] q3
  224. 4165 [152]1,ma$(i)
  225. 4170 [152]1,mn$(i)
  226. 4175 [130]
  227. 4180 [129] i[178]1 [164] q4
  228. 4185 [152]1,es$(i)
  229. 4190 [152]1,en$(i)
  230. 4195 [152]1,b(i)
  231. 4200 [130]
  232. 4205 [152]1:[160]1:[160]15
  233. 4210 [137]120
  234. 4215 [132]15,en,em$,et,es:[139] en[178]0[167] [142]
  235. 4220 [151]53280,2:[153]"str$right$(NULL)(NULL) val(NULL)(NULL)(NULL)(NULL): ";en;em$;et;es:[141]9080
  236. 4225 [153]"(NULL)ress any key for menu"
  237. 4230 [141]180
  238. 4235 [160]1:[160]15:[160]5:[137]120
  239. 5000 [153][199](147);[163]30);"(NULL)(NULL)right$(NULL)(NULL) (NULL)val(NULL)(NULL)"
  240. 5002 [137]9075
  241. 5005 [159]4,4,7:pp[178]64:l[178]0
  242. 5010 [153] [200](cm$,3);"(NULL)umber of question available:";tq
  243. 5015 [153] [200](cm$,5);
  244. 5020 [141]1115
  245. 5025 [139] tq[171]dq[177]0 [167]5050
  246. 5030 [153]:[153]"(NULL)o questions in memory or all deleted"
  247. 5033 [153]"(NULL)ress spacebar for main menu"
  248. 5035 [141]180
  249. 5040 [139] z$[178]" "[167]120
  250. 5045 [137]5035
  251. 5050 [139]dq[178]0 [167]5075
  252. 5055 [153]:[153]"(NULL)(NULL)(NULL)right$lenval!wait only";tq[171]dq;"waitquestions will be"
  253. 5060 [153]"printed. right$f you need more, return to"
  254. 5065 [153]"menu.  (NULL)hen press 1wait to write more"
  255. 5070 [153]"qestions or 7wait to undelete existing ones."
  256. 5075 [153]:[153]"lenheck printer."
  257. 5080 [153]"(NULL)ut printhead just below perforations":[153]
  258. 5085 [153]"(NULL)ress spacebarwait for main menu."
  259. 5090 [153]"      (NULL) keywait to start printing"
  260. 5095 [141]180
  261. 5100 [139] z$[178]" " [167]120
  262. 5105 [139] z$[178]"p" [167]5115
  263. 5110 [137]5095
  264. 5115 [153][199](147);[200](cm$,8);"(NULL)itle of test:"
  265. 5120 x[178]60:[153][200](cm$,9);:[141]7010
  266. 5125 [139] p$[178]""[167]5120
  267. 5130 tl$[178]p$
  268. 5135 [153][199](147);[200](cm$,10);"(NULL)(NULL)val(NULL)atn(NULL)right$(NULL)chr$ (NULL)val(NULL)(NULL)"
  269. 5140 [152]4," ":[152]4," ":[152]4,[166](64[171][195](tl$))[173]2)tl$:l[178]l[170]3
  270. 5145 [152]4," ":[152]4,"(NULL)ametotototototototototototototototototototototototo":[152]4
  271. 5150 [152]4,"str$atetotototototototototototototototototototo":[152]4
  272. 5155 [152]4,"(NULL)eriodtotototototo":[152]4," ":l[178]l[170]7
  273. 5160 [153]:[153]:[153]"sorting...":n[178]0
  274. 5165 [139] q3[171]dm[178]0 [167]5275
  275. 5170 [152]4,"(NULL)atn(NULL)lenleft$right$(NULL)chr$: (NULL)rite the letter of the best answer.":
  276. 5175 [152]4," ":[152]4," ":l[178]l[170]3
  277. 5180 w[178]q3:[141]5575
  278. 5185 o[178]1
  279. 5190 [129] q[178]1 [164] q3
  280. 5195 ss(o)[178]tt(o)
  281. 5200 [139][200](ma$(q),1)[178]"^"[167]5235
  282. 5205 g[178]n[170]65
  283. 5210 w$[178]ma$(q)[170][201](v$,(29[171][195](ma$(q))))
  284. 5215 [139] n[179]26 [167] w$[178]w$[170]" "[170][199](g)[170]". "[170]mn$(ss(o)):[137]5225
  285. 5220 g[178]g[171]26:w$[178]w$[170][199](g)[170][199](g)[170]". "[170]mn$(ss(o))
  286. 5225 o[178]o[170]1
  287. 5230 [141]5565:sp[178]7:[152]4,"totototo";n$;:[141]5625
  288. 5235 [130]
  289. 5240 [139] dm[178]0[167]5275
  290. 5245 [129] q[178]1 [164] q3
  291. 5250 ss(o)[178]tt(o)
  292. 5255 [139] [200](ma$(q),1)[179][177]"^" [167]5270
  293. 5260 w$[178][201](v$,30)[170][199](n[170]65)[170]". "[170]mn$(ss(o)):o[178]o[170]1
  294. 5265 sp[178]7:[152]4,"        ";:[141]5625
  295. 5270 [130]
  296. 5275 [139] q1[171]dt[178]0 [167]5330
  297. 5280 [152]4,"(NULL)(NULL)(NULL)val ascatn(NULL)(NULL)val and (NULL)(NULL)right$(NULL)right$(NULL)(NULL): (NULL)rite (NULL),asc, or (NULL) for each question."
  298. 5285 [152]4," ":[152]4," ":l[178]l[170]3
  299. 5290 w[178]q1:[141]5575
  300. 5295 o[178]1
  301. 5300 [129] q[178]1 [164] q1
  302. 5305 sp(o)[178]tt(o)
  303. 5310 [139][200](tf$(sp(o)),1)[178]"^"[167]5325
  304. 5315 w$[178]tf$(sp(o)):[141]5565:sp[178]8:[152]4,"totototo";n$;:[141]5625
  305. 5320 as$(n)[178]n$[170]"  "[170]an$(sp(o))
  306. 5325 o[178]o[170]1:[130]
  307. 5330 [139] q2[171]df[178]0 [167]5385
  308. 5335 [152]4,"ascright$(NULL)(NULL)-right$(NULL): (NULL)rite the answer in the space provided."
  309. 5340 [152]4," ":[152]4," ":l[178]l[170]3
  310. 5345 w[178]q2:[141]5575
  311. 5350 o[178]1
  312. 5355 [129] q[178]1 [164] q2
  313. 5360 sq(o)[178]tt(o)
  314. 5365 [139][200](fl$(sq(o)),1)[178]"^"[167]5380
  315. 5370 w$[178]fl$(sq(o)):[141]5565:sp[178]7:[152]4,"   "n;:[141]5625
  316. 5375 as$(n)[178]n$[170]"  "[170]fs$(sq(o))
  317. 5380 o[178]o[170]1:[130]
  318. 5385 [139] q4[171]de[178]0 [167]5445
  319. 5390 [152]4,"val(NULL)(NULL)atn(NULL): atnnswer each question completely."
  320. 5395 [152]4," ":[152]4," ":l[178]l[170]3
  321. 5400 w[178]q4:[141]5575
  322. 5405 o[178]1
  323. 5410 [129] q[178]1 [164] q4
  324. 5415 sr(o)[178]tt(o)
  325. 5420 [139][200](es$(sr(o)),1)[178]"^"[167]5440
  326. 5425 w$[178]es$(sr(o)):[141]5565:sp[178]4:[152]4,n;:[141]5625
  327. 5430 [129] k[178]1 [164] b(sr(o)):[141]5715:[152]4,".";[166]62);".":[152]4," ":[130]
  328. 5435 as$(n)[178]n$[170]"  "[170]en$(sr(o))
  329. 5440 o[178]o[170]1:[130]
  330. 5445 [141]5740
  331. 5450 [153][199](147);[200](cm$,14);"press atn keywait for answer key"
  332. 5455 [153]"      spacebarwait for main menu"
  333. 5460 [141]180
  334. 5465 [139] z$[178]" " [167]120
  335. 5470 [139] z$[178]"a" [167]5480
  336. 5475 [137]5460
  337. 5480 [139] q3[178]0 [167]5540
  338. 5485 k[178]1:g[178]0
  339. 5490 [129]i[178]1[164]q3:k$[178][196](k):k$[178][202](k$,2,[195](k$))
  340. 5495 j[178]1
  341. 5500 [139] [200](ma$(i),1)[178]"^" [167]5535
  342. 5505 [139] j[177]q3 [167]5535
  343. 5510 [139] i[179][177]ss(j) [167]5530
  344. 5515 g[178]j[170]64:[139] j[177][178]27 [167]5525
  345. 5520 [152]4,k$[170]".   "[170][199](g)[170]"  "[170]mn$(i):k[178]k[170]1:[152]4," ":[137]5535
  346. 5525 g[178]g[171]26:[152]4,k$[170]".   "[170][199](g)[170][199](g)[170]"  "[170]mn$(i):k[178]k[170]1:[137]5535
  347. 5530 j[178]j[170]1:[137]5505
  348. 5535 [130]i
  349. 5540 [129]i[178](q3[171]dm) [164] n
  350. 5545 [152]4,as$(i):[152]4," "
  351. 5550 [130]
  352. 5555 [160]4
  353. 5560 [137]120
  354. 5565 n[178]n[170]1:[139]n[179]10[167] n$[178][196](n):n$[178]" "[170][202](n$,2,[195](n$))[170]". ":[142]
  355. 5570 n$[178][196](n):n$[178][202](n$,2,[195](n$))[170]". ":[142]
  356. 5575 [129] i[178]1[164]w:r1(i)[178][187](0):r2(i)[178]r1(i):[130]
  357. 5580 [129]i[178]w[171]1[164]1 [169][171]1
  358. 5585 [129] t[178]1 [164] i
  359. 5590 [139] r1(t)[177]r1(t[170]1) [167] te[178]r1(t):r1(t)[178]r1(t[170]1):r1(t[170]1)[178]te
  360. 5595 [130]:[130]
  361. 5600 [129]i[178]1[164]w
  362. 5605 [129]j[178]1[164]w
  363. 5610 [139]r2(i)[178]r1(j) [167] tt(i)[178]j:r1(j)[178]1
  364. 5615 [130]:[130]
  365. 5620 [142]
  366. 5625 fl[178]0
  367. 5630 [139] fl[177]0 [167] [139] [195](w$)[179][178]pp [167]5640
  368. 5635 [137]5645
  369. 5640 [152]4,[200](v$,sp)[170]w$:[152]4," ":l[178]l[170]2:[141]5715:w$[178]"":[137]5710
  370. 5645 [139] [195](w$)[179][178]pp [167] [152]4,w$:[152]4," ":l[178]l[170]2:[141]5715:w$[178]"":[137]5710
  371. 5650 [129] j[178]pp[164] 1 [169] [171]1
  372. 5655 [139] [202](w$,j,1)[179][177]" " [167]5690
  373. 5660 fl[178]fl[170]1
  374. 5665 [139] fl[178]1[167]5680
  375. 5670 [139] fl[177]1 [167] b$[178][201](a$,sp)[170][200](w$,j):j[178]1
  376. 5675 w$[178][202](w$,[195](b$)[171](sp),[195](w$)):[137]5695
  377. 5680 b$[178][200](w$,j):j[178]1
  378. 5685 w$[178][202](w$,[195](b$)[170]1,[195](w$)):[137]5695
  379. 5690 [130] j
  380. 5695 [152]4,b$
  381. 5700 l[178]l[170]1
  382. 5705 [139] [195](w$)[177]0 [167]5630
  383. 5710 [142]
  384. 5715 [139]l[179]58 [167] [142]
  385. 5720 [153] [199](147);[200](cm$,14);"(NULL)ress space bar to continue printingwait"
  386. 5725 [141]180
  387. 5730 [139] z$[178]" "[167]5740
  388. 5735 [137]5725
  389. 5740 [129] i[178]66 [164] l [169][171]1:[152]4," ":[130]
  390. 5745 [129]i[178]1 [164] 4:[152]4," ":[130]:l[178]4:[142]
  391. 6005 [160]4
  392. 6010 [153][199](147);"press spacebar for menu"[163]25)"valstr$right$(NULL) (NULL)(NULL)val(NULL)(NULL)right$(NULL)(NULL)(NULL)wait"
  393. 6015 [159]4,3:pp[178]38
  394. 6020 [153][200](cm$,2);"valnter  (NULL)wait-asc   valwaitssay   (NULL)waitatching   ascwaitill-in"
  395. 6025 [161] z$
  396. 6030 [139] z$[178]"t"[167] [141]2050:[137]6060
  397. 6035 [139] z$[178]"f"[167] [141]2050:[137]6140
  398. 6040 [139] z$[178]"e"[167] [141]2050:[137]6310
  399. 6045 [139] z$[178]"m"[167] [141]2050:[137]6220
  400. 6050 [139] z$[178]" "[167] [141]2050:[137]120
  401. 6055 [137]6025
  402. 6060 [139] q1[178]0 [167]6550
  403. 6065 [129] i[178]1 [164] q1
  404. 6070 hd$[178]"load(NULL)rue/ascalse-(NULL)pinion":[141]6390
  405. 6075 w$[178]tf$(i)
  406. 6080 [141]6405
  407. 6085 x[178]120:w$[178]tf$(i):[141]6425:dt[178]dt[170]pq
  408. 6090 tf$(i)[178]w$
  409. 6095 [139]z$[178][199](13)[167]6005
  410. 6100 [139]z$[178]"n" [167]6125
  411. 6105 [153][200](cm$,20);"(NULL)he answer is now (NULL), asc, or (NULL)?"
  412. 6110 [141]180
  413. 6115 [139](z$[178]"t")[176](z$[178]"f")[176](z$[178]"o")[167] [153] z$:an$(i)[178]z$:[137]6125
  414. 6120 [137]6110
  415. 6125 [153] [199](147)
  416. 6130 [130]
  417. 6135 [137]6005
  418. 6140 [139] q2[178]0 [167]6550
  419. 6145 [129] i[178]1 [164] q2
  420. 6150 hd$[178]"loadascill-inwait":[141]6390
  421. 6155 w$[178]fl$(i)
  422. 6160 [141]6405
  423. 6165 x[178]120:w$[178]fl$(i):[141]6425:df[178]df[170]pq
  424. 6170 fl$(i)[178]w$
  425. 6175 [139] z$[178][199](13) [167]6005
  426. 6180 [139]z$[178]"n" [167]6205
  427. 6185 [141]6420
  428. 6190 x[178]39:[153][200](cm$,18);:[141]7010
  429. 6195 [139] p$[178]"" [167]6190
  430. 6200 fs$(i)[178]p$
  431. 6205 [153] [199](147)
  432. 6210 [130]
  433. 6215 [137]6005
  434. 6220 [139] q3[178]0 [167]6550
  435. 6225 [129] i[178]1 [164] q3
  436. 6230 f2[178]1
  437. 6235 hd$[178]"load(NULL)atchingwait":[141]6390
  438. 6240 w$[178]ma$(i)
  439. 6245 [141]6405
  440. 6250 x[178]28:w$[178]ma$(i):[141]6425:dm[178]dm[170]pq
  441. 6255 ma$(i)[178]w$
  442. 6260 [139] z$[178][199](13) [167]6005
  443. 6265 [139]z$[178]"n" [167]6290
  444. 6270 [141]6420
  445. 6275 x[178]28:[153][200](cm$,18);:[141]7010
  446. 6280 [139] p$[178]"" [167]6275
  447. 6285 mn$(i)[178]p$
  448. 6290 [153] [199](147)
  449. 6295 [130]
  450. 6300 f2[178]0
  451. 6305 [137]6005
  452. 6310 [139] q4[178]0 [167]6550
  453. 6315 [129] i[178]1 [164] q4
  454. 6320 hd$[178]"loadvalssaywait":[141]6390
  455. 6325 w$[178]es$(i)
  456. 6330 [141]6405
  457. 6335 x[178]199:w$[178]es$(i):[141]6425:de[178]de[170]pq
  458. 6340 es$(i)[178]w$
  459. 6345 [139] z$[178][199](13) [167]6005
  460. 6350 [139]z$[178]"n" [167]6375
  461. 6355 [141]6420
  462. 6360 x[178]78:[153][200](cm$,18);:[141]7010
  463. 6365 [139] p$[178]"" [167]6360
  464. 6370 en$(i)[178]p$
  465. 6375 [153] [199](147)
  466. 6380 [130]
  467. 6385 [137]6005
  468. 6390 [153]hd$;[163]25)"valdit questions"
  469. 6395 [153] [200](cm$,2);"valnter   (NULL)waitewrite  str$waitelete  (NULL)waitndelete  (NULL)waitext"
  470. 6400 [142]
  471. 6405 [139] [200](w$,1)[178]"^" [167] [153]" ** deleted question ** wait":[141]6545
  472. 6410 [153] [200](cm$,5):l[178]0:[141]5625
  473. 6415 [142]
  474. 6420 [153][200](cm$,17);"(NULL)ew answer:":[142]
  475. 6425 [153][200](cm$,10);"valnter (NULL), str$, (NULL), or (NULL)":pq[178]0
  476. 6430 [141]180
  477. 6435 [139] z$[178]"r" [167]6465
  478. 6440 [139] z$[178]"d" [167]6480
  479. 6445 [139] z$[178]"u" [167]6510
  480. 6450 [139] z$[178][199](13)[167] [142]
  481. 6455 [139] z$[178]"n" [167] [142]
  482. 6460 [137]6430
  483. 6465 [153][200](cm$,12);:[141]7010
  484. 6470 [139]p$[178]""[167][142]
  485. 6472 [139] [200](w$,1)[178]"^" [167] pq[178]pq[171]1:dq[178]dq[171]1
  486. 6475 w$[178]p$:[142]
  487. 6480 [139] [200](w$,1)[179][177]"^" [167]6495
  488. 6485 [153] [200](cm$,12);"already deleted!wait":[129] wt[178]1 [164] 500:[130]
  489. 6490 [153] [200](cm$,10);v$:[137]6425
  490. 6495 w$[178]"^"[170]w$:[153][200](cm$,12);"question deletedwait"
  491. 6500 [129]wt[178]1[164]500:[130]:dq[178]dq[170]1:pq[178]pq[170]1
  492. 6505 z$[178]"n":[142]
  493. 6510 [139] [200](w$,1)[178]"^" [167]6530
  494. 6515 [153]"not a deleted question!wait"
  495. 6520 [129] wt[178]1[164]500:[130]
  496. 6525 [153] [200](cm$,10);v$:[137]6425
  497. 6530 [141]6545:[153] [200](cm$,12);" ** question restored! ** wait"
  498. 6535 [129]wt[178]1 [164] 500:[130]:z$[178]"n":dq[178]dq[171]1:pq[178]pq[171]1
  499. 6540 [142]
  500. 6545 w$[178][201](w$,[195](w$)[171]1):[142]
  501. 6550 [153]"(NULL)o questions of this typewait"
  502. 6555 [153]:[153]"(NULL)ress spacebarwait to continue"
  503. 6560 [141]180
  504. 6565 [139] z$[178]" " [167]6005
  505. 6570 [137]6560
  506. 7010 [151]198,0
  507. 7015 p$[178]""
  508. 7020 [153]"tocmd";
  509. 7025 [161]q$:[139]q$[178]""[167]7025
  510. 7030 [139]q$[178]"load"[176]q$[178]""[176]q$[178]"on"[176]q$[178]""[176]q$[178]"cmd"[176]q$[178]""[167]7025
  511. 7035 [139]q$[178]""[176]q$[178]"wait"[176][198](q$)[178]141[167]7025
  512. 7040 [139][198](q$)[178]13[167]7075
  513. 7045 [139][198](q$)[178]20[167]7060
  514. 7050 [139][195](p$)[178]x[167]7025
  515. 7055 p$[178]p$[170]q$:[153]q$"tocmd";:[137]7025
  516. 7060 [139]p$[178]""[167]7025
  517. 7065 p$[178][200](p$,[195](p$)[171]1):[153]"cmdto cmdcmd";:[139]p$[178]""[167]7020
  518. 7070 [137]7025
  519. 7075 [153]" ":[142]
  520. 8005 [129]j[178]896 [164] 933:[135]x:[151]j,x:[130]
  521. 8010 [131]160,2,177,45,153,137,0,200,192,6
  522. 8015 [131]208,246,162,1,32,198,255
  523. 8020 [131]32,228,255,201,13,240,11,164,142,145
  524. 8025 [131]140,200,132,142,196,139,208,238,76,204,255
  525. 8030 [142]
  526. 8040 [151]53280,2:[151]53281,0:[153][199](147);[163]28)"len(NULL)valatn(NULL) (NULL)(NULL)atn(NULL)val"
  527. 8045 [153][200](cm$,12);
  528. 8050 [153][163]16)"(NULL)atn(NULL)(NULL)right$(NULL)chr$!wait":[141]9080
  529. 8055 [153]:[153]"(NULL)his command will get rid of all"
  530. 8060 [153]"questions in memory."
  531. 8065 [153]:[153]"(NULL)ress  spacebarwait for main menu"
  532. 8070 [153]"      len keywait to clear all questions
  533. 8075 gosub180
  534. 8080 if z$=" " then120
  535. 8085 if z$="c" then gosub9035:goto120
  536. 8090 goto8075
  537. 9005 a$="                 "
  538. 9010 a$=a$+a$+a$+a$+a$
  539. 9015 a$=a$+a$+a$
  540. 9020 v$=a$
  541. 9025 cm$=""
  542. 9035 tq=0:q1=0:q2=0:q3=0:q4=0
  543. 9040 dq=0:dt=0:df=0:dm=0:de=0
  544. 9045 mq=0:m1=0:m2=0:m3=0:m4=0
  545. 9050 d1=0:d2=0:d3=0:d4=0:d5=0
  546. 9055 return
  547. 9075 rem device checker
  548. 9077 open15,4,15:close15
  549. 9078 ifst=0then5005
  550. 9079 forx=1to3:print"[147][208]rinter is off..[215]ait for menu..":gosub9080:next:goto120
  551. 9080 t=87:n$="251251251251251251251"
  552. 9081 s=54272:pokes+6,96:pokes+24,15
  553. 9082 fori=1to18step3
  554. 9083 pokes+1,val(mid$(n$,i,2)):pokes+4,33
  555. 9084 forj=1tot*val(mid$(n$,i+2,1)):next
  556. 9085 pokes+4,0:next
  557. 9086 return
  558. 10000 rem directory read
  559. 10001 print"[147][208]ress space to pause[146]"
  560. 10005 open15,8,15
  561. 10010 open5,8,0,"$":gosub4215
  562. 10011 get#5,f$,f$
  563. 10012 get#5,f$,f$:iff$=""then10050
  564. 10013 getk$:ifk$=chr$(32)thengosub10075
  565. 10015 get#5,az$,bz$
  566. 10020 lf$=str$(asc(az$+chr$(0))+asc(bz$+chr$(0))*256):printlf$" ";
  567. 10025 get#5,fi$:printl$;fi$;:iffi$=""thenprint:goto10012
  568. 10030 goto10025
  569. 10050 close5:close15
  570. 10055 print"[208]ress a key to continue[146]":gosub180
  571. 10070 goto11000
  572. 10075 print"[208]ress space to continue[146]"
  573. 10080 getk$:ifk$=chr$(32)then10085
  574. 10082 goto10080
  575. 10085 print"[145][145]":return
  576. 10100 rem format a disk
  577. 10101 print"[147][198]ormat a [196]isk"
  578. 10105 open15,8,15
  579. 10110 gosub4215
  580. 10115 input"[196]isk [206]ame[157][157][157][157][157][157][157][157][157]<return to abort>[145][157][157][157][157][157][157]";nm$
  581. 10120 ifnm$=chr$(13)thenclose15:goto11000
  582. 10122 print"[198]ormatting will erase all files"
  583. 10123 input"[193]re you sure[146] [[217]/[206]]";k$
  584. 10124 ifk$<>"y"thenclose15:goto11000
  585. 10125 print"[147][198]ormating [196]isk..."
  586. 10130 print#15,"n0:"+nm$+",td"
  587. 10135 gosub4215
  588. 10140 close15:goto11000
  589. 10200 rem validate
  590. 10201 print"[147][214]alidate [196]isk"
  591. 10205 print"[214]alidating may take a while."
  592. 10210 input"[207].[203]. to proceed [[217]/[206]]";k$
  593. 10215 ifk$<>"y"then11000
  594. 10220 open15,8,15
  595. 10225 gosub4215
  596. 10230 print#15,"v0:"
  597. 10235 print"[147][214]alidating...[146]":forj=1to1100:next
  598. 10240 close15:goto11000
  599. 10300 rem scratch a file
  600. 10301 print"[147][211]cratch a file"
  601. 10305 input"[198]ile [206]ame[157][157][157][157][157][157][157][157][157]<return to abort>[145][157][157][157][157][157][157]";nm$
  602. 10310 ifnm$=chr$(13)thenclose15:goto11000
  603. 10315 input"[193]re you sure [[217]/[206]]";k$
  604. 10320 ifk$<>"y"thenclose15:goto11000
  605. 10325 print"[147][211]cratching file..."
  606. 10330 open15,8,15
  607. 10335 gosub4215
  608. 10340 print#15,"s0:"+nm$
  609. 10345 gosub4215
  610. 10350 forj=1to1100:next:close15:goto11000
  611. 10400 rem rename file
  612. 10401 print"[147][210]ename a file"
  613. 10405 input"[207]ld [206]ame[157][157][157][157][157][157][157][157][157]<return to abort>[145][157][157][157][157][157][157]";nm$
  614. 10410 ifnm$=chr$(13)thenclose15:goto11000
  615. 10425 input"[206]ew [206]ame[157][157][157][157][157][157][157][157][157]<return to abort>[145][157][157][157][157][157][157]";nw$
  616. 10430 ifnw$=chr$(13)then close15:goto11000
  617. 10435 input"[193]re you sure [[217]/[206]]";k$
  618. 10440 ifk$<>"y"thenclose15:goto11000
  619. 10445 print"[147][210]enaming ";nm$;" to ";nw$
  620. 10450 open15,8,15
  621. 10455 gosub4215
  622. 10460 print#15,"r0:"+nw$+"="+nm$
  623. 10465 gosub4215
  624. 10470 forj=1to1000:next:close15:goto11000
  625. 10500 rem initialize disk
  626. 10505 open15,8,15:gosub4215
  627. 10510 print#15,"i0:"
  628. 10515 gosub4215:print"[207].[203].[146]"
  629. 10525 forj=1to1000:nextj:close15:goto11000
  630. 11000 rem disk command menu
  631. 11005 print"[147][196]isk [195]ommands[146]"
  632. 11010 print"1.[146] [196]irectory"
  633. 11015 print"2.[146] [198]ormat a [196]isk"
  634. 11020 print"3.[146] [214]alidate a [196]isk"
  635. 11025 print"4.[146] [211]cratch a [198]ile"
  636. 11030 print"5.[146] [210]ename a [198]ile"
  637. 11040 print"6.[146] [201]nitialize"
  638. 11045 print"7.[146] [205]ain [205]enu"
  639. 11050 print"[211]elect number[146]"
  640. 11055 getz$:ifz$=""then11055
  641. 11060 z=val(z$)
  642. 11065 ifz<1orz>7then11055
  643. 11070 on z goto10000,10100,10200,10300,10400,10500,120
  644.